
#ifndef DESIGN_PATTERNS_MEDIATOR_PLATFORM_H
#define DESIGN_PATTERNS_MEDIATOR_PLATFORM_H

#include <vector>
#include "Message.h"
#include "Commodity.h"

class Merchant;

class Platform
{
public:
  virtual bool Dispatch(const Message& msg) = 0;

  virtual void Registry(Merchant* m) = 0;

  virtual std::vector<Commodity>* Search(const std::string& key) = 0;

  virtual ~Platform() = default;
};

#endif //DESIGN_PATTERNS_MEDIATOR_PLATFORM_H
